Electronic program guides (EPG) are ubiquitous in television (TV) delivery systems or networks such as cable television and satellite television. Generally, an EPG displays information about a program that facilitates watching or recording the program, such as its title, broadcast time, and broadcast channel. An EPG allows the viewer to browse program summaries, and, in certain interactive networks, search by genre, title, or channel. Furthermore, when an EPG is connected to a digital video recorder (DVR), it enables a viewer to plan his or her viewing, and record programs for later viewing. An EPG may also be used to implement parental controls such that programs with certain ratings or titles are not permitted to be viewed without the appropriate password to override the parental control. The program information displayed by an EPG is based on the program's metadata.
Metadata for EPGs can be obtained in different ways including from the program's delivery stream, through metadata service providers, and from the recorded program. When a program is being delivered, it must have certain metadata information associated with it. Metadata transmitted along with the stream is referenced to herein as “content metadata.” This is data transmitted along with the Digital TV (DTV) signal that lets DTV receivers extract information about the currently-tuned station and the current program. The data includes tuning information (frequency, MPEG program number), title, rating (for VCHIP/parental control purposes), closed captioning information, etc. This information is targeted for a short time frame (from current program up to 6 hours out) for the currently tuned digital transport stream only. It typically follows the Program and System Information Protocol (PSIP). This is not the type of information a traditional electronic program guide would use, but rather is used by an advanced digital TV without a set-top box (STB) or set-top unit. This data is accessed by the JavaTV (http://java.sun.com/products/javatv/) application programming interface (API) in the javax.tv.service.guide package. Other standards for injecting metadata in a delivery stream are ATSC (American TV Standards Committee), which is an older more generic standard, and OCAP (Open Cable Application Platform), which is a Java API for making metadata available from a content entity (e.g., ABC, PBS, etc) to any java application running on device.
Another source of metadata is through “metadata aggregators” and is referred to herein as “aggregated metadata.” This is not governed by a standard, but rather is provided for a fee to populate an EPG. This data includes all the typical data one would expect to see (title, rating, content warnings, description, actors, director(s), review, duration, audio info (language, stereo, Dolby, Dolby 5.1, etc.), video info (letterbox, wide screen, HD, etc.), category, subcategories). The two major program metadata aggregators in the North American market are Tribune Media Services (TMS), which provides both PSIP and proprietary program listing formats, and Gemstar TVGuide, which provides a proprietary program listing format for use in their guides.
A third source of metadata is through the content recorded by a DVR, and is referred to herein as “recorded metadata”. Recorded metadata is stored when a program is recorded on a user's DVR. Although this information will include the broadcast and/or aggregated metadata as mentioned above, it will also include other information as to the time of recording and whether or not the show has been watched by the user. Generally, this metadata is stored with the recorded content on the user's DVR.
Displaying program information on the user's TV requires obtaining, organizing, and providing the above-described metadata to the EPG. TVWorks (Ontario, Canada) provides a state-of-the-art solution for providing metadata to the EPG. Specifically, the solution involves a server associated with the cable provider or multi system operator (MSO) and a software module associated with the user's STB. The server accesses metadata aggregators such as TVGuide and TMS to obtain metadata information on publicly-delivered content. This server also functions to filter this metadata such that only regionally appropriate subject matter, that is, programming specific to the regional area supported by the MSO headend is provided to the signal provider. In the TVWorks environment, this data is imported from either TMS or TVGuide and converted into a proprietary database format.
In addition to the server, the TVWorks system also comprises a module on the user's STB that serves to gather and provide metadata information to the EPG. Specifically, the module comprises a set of Java APIs that an electronic program guide (or any other OCAP application) can use to query or search form program data up to two weeks beyond the current time on any channel, regardless of what channel the user might be tuned to at that moment. This way, the TVWorks system aggregates the various metadata sources, and provides the EPG with a single point to obtain the needed metadata.
Although TVWorks' approach is effective in supporting the EPG, Applicants have nevertheless identified a need for improving the quality of the metadata provided. The present invention fulfills this need among others.